initArtCateList()

// 获取文章分类的列表
function initArtCateList() {
  $.ajax({
    method: 'GET',
    url: '/my/article/cates',
    success: function (res) {
      $('tbody').html(template('tpl', res))
    }
  })
}

let index = null
$('#btnAddCate').on('click', function () {
  index = layui.layer.open({
    type: 1,
    title: '添加文章类别',
    area: ['500px', '300px'],
    content: $('#box').html() //这里content是一个普通的String
  })
})

// 通过代理的形式，为 form-add 表单绑定 submit 事件
$('body').on('submit', '#form-add', function (e) {
  e.preventDefault()
  $.ajax({
    method: 'POST',
    url: '/my/article/addcates',
    data: $(this).serialize(),
    success: function (res) {
      if (res.status !== 0) {
        return layer.msg('新增分类失败！')
      }
      initArtCateList()
      layer.msg('新增分类成功！')
      // 根据索引，关闭对应的弹出层
      layer.close(index)
    }
  })
})

$('tbody').on('click', '.del', function () {
  let id = $(this).attr('data-id')
  layui.layer.confirm('确认删除', { icon: 3, title: '提示' }, function (index) {
    $.ajax({
      type: 'get',
      url: '/my/article/deletecate/' + id,
      success: (res) => {
        if (res.status !== 0) return layui.layer.msg(res.message)
        layui.layer.msg('删除成功')
        initArtCateList()
        // 关闭弹层
        layui.layer.close(index)
      }
    })
  })
})

// 第一步：找到编辑按钮给其注册点击 需要采用事件委托的形式
let editIndex = null;
$('tbody').on('click', '.edit', function () {
 editIndex = layui.layer.open({
    type: 1,
    title: '编辑文章分类',
    area: ['500px', '300px'],
    content: $('#edit').html()
  })

  // 获取自定义属性的值
  let id = $(this).attr('data-id')
  $.ajax({
    type: 'get',
    url: `/my/article/cates/${id}`,
    success: (res) => {
      // 获取失败
      if (res.status !== 0) return layui.layer.msg(res.message)
      // 将数据显示到弹出层 利用 form.val来方法
      layui.form.val('form-edit', res.data)
    }
  })
})


$('body').on('submit','#form-edit',function(e) {
  e.preventDefault();
  $.ajax({
    type:'POST',
    url: '/my/article/updatecate',
    data: $(this).serialize(),
    success: res => {
      if (res.status !== 0) return layui.layer.msg(res.message)
      // 1. 关闭弹层 
      layui.layer.close(editIndex)
      layui.layer.msg('更新成功');
      initArtCateList()
    }
  })
})